OPC Studio User's Guide and Reference
DisposeGuard<TResult>(Func<TResult>) Method



OpcLabs.BaseLib Assembly > OpcLabs.BaseLib Namespace > DisposableObject Class > DisposeGuard Method : DisposeGuard<TResult>(Func<TResult>) Method
The type of the return value of the function.
The function to be invoked.

The value of this parameter cannot be null (Nothing in Visual Basic).

Invokes the specified function if the object is not disposed, throwing an exception otherwise.
Syntax
'Declaration
 
<JetBrains.Annotations.AssertionMethodAttribute()>
<JetBrains.Annotations.CanBeNullAttribute()>
Protected Overloads Function DisposeGuard(Of TResult)( _
   ByVal function As Func(Of TResult) _
) As TResult
'Usage
 
Dim instance As DisposableObject
Dim function As Func(Of TResult)
Dim value As TResult
 
value = instance.DisposeGuard(Of TResult)(function)
[JetBrains.Annotations.AssertionMethod()]
[JetBrains.Annotations.CanBeNull()]
protected TResult DisposeGuard<TResult>( 
   Func<TResult> function
)
[JetBrains.Annotations.AssertionMethod()]
[JetBrains.Annotations.CanBeNull()]
protected:
TResult^ DisposeGuardgeneric<typename TResult>
( 
   Func<TResult^>^ function
) 

Parameters

function
The function to be invoked.

The value of this parameter cannot be null (Nothing in Visual Basic).

Type Parameters

TResult
The type of the return value of the function.

Return Value

The return value of the function.

This method can return null (Nothing in Visual Basic).

Exceptions
ExceptionDescription

A null reference (Nothing in Visual Basic) is passed to a method that does not accept it as a valid argument.

This is a usage error, i.e. it will never occur (the exception will not be thrown) in a correctly written program. Your code should not catch this exception.

An operation was performed on a disposed object.
Requirements

Target Platforms: .NET Framework: Windows 10 (selected versions), Windows 11 (selected versions), Windows Server 2016, Windows Server 2022; .NET: Linux, macOS, Microsoft Windows

See Also